package test.serverframe.armc.server.manager.service;

import java.util.List;

import javax.validation.Valid;

import test.serverframe.armc.server.manager.controller.vo.InvokeDetailVo;
import test.serverframe.armc.server.manager.domain.Task;
import test.serverframe.armc.server.manager.domain.params.AddAllData;
import test.serverframe.armc.server.manager.domain.params.HistoryInterfaceParams;

/**
 * @Description 服务编排任务接口
 * @Author LSY
 * @Date 2018/9/26 15:48
 * @IntefaceName test.serverframe.armc.server.manager.service.TaskService
 */
public interface TaskService extends BaseService<Task, String> {

    /**
     * @Descripttion 添加任务
     * @Author LSY
     * @Date 2018/10/4 9:39
     * @Param [addAllData 自定义数据结构]
     * @Return
     **/
    int addTask(AddAllData addAllData);

    /**
     * @Descripttion 修改任务
     * @Author LSY
     * @Date 2018/9/27 11:04
     * @Param [addAllData 自定义数据结构]
     * @Return 修改成功数量
     **/
    int updateTask(AddAllData addAllData);

    /**
     * @Descripttion 查看任务详情
     * @Author LSY
     * @Date 2018/10/5 16:04
     * @Param [taskId 任务主键id]
     * @Return
     **/
    AddAllData findTask(String taskId) throws Exception;

	/**
	 * @author yegui  
	 * @date 2018年12月15日  
	 * @param taskInvokeId
	 * @return
	 * List<Task>
	 */  
	List<InvokeDetailVo> findTaskByTaskInvokeId(String taskInvokeId);

	/**
	 * 查询任务名称，去重操作
	 * @author yegui  
	 * @date 2019年2月28日  
	 * @return
	 * List<String>
	 */
	List<String> findTaskName();
}
